package com.example.service;

import com.example.entity.User;

import java.util.List;

/**
 * 提供登录认证、授权
 * @author fyx
 */
public interface AuthService {
    /**
     * 用户登录
     * @param username 用户名
     * @param password 密码
     * @return 验证成功返回manager，否则返回null
     */
    User login(String username, String password);

    /**
     * 用户登录,使用加密后的密码
     * @param username 用户名
     * @param password 密码
     * @return 验证成功返回manager，否则返回null
     */
    User login2(String username, String password);


    /**
     * 获取用户的角色集合
     * @param username 传入用户名
     * @return manager表中用户对应角色集合
     */
    List<String> getRoles(String username);

    /**
     * 获取用户的所有权限
     * @param roles 所有角色的id
     * @return manager表中用户对应权限集合
     */
    List<String> getPerms(List<String> roles);
}
